added samples
[windows-sources.git] / sdk / samples / all in on code / Visual Studio 2008 / VBASPNETRssFeeds / Rss.aspx.vb
blob1cf98546d3a6b5b42d8b74a445578268c679cfef
1 '****************************** Module Header ******************************\
2 ' Module Name: Rss.aspx.vb
3 ' Project: VBASPNETRssFeeds
4 ' Copyright (c) Microsoft Corporation
6 ' This is the main page of this sample that illustrate how to build a rss
7 ' feed via ASP.NET.
8 '
9 ' This source is subject to the Microsoft Public License.
10 ' See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL.
11 ' All other rights reserved.
13 ' History:
14 ' 01/19/2010 5:30 PM Bravo Yang Created
15 '***************************************************************************/
17 Imports System.Xml
18 Imports System.Data.SqlClient
20 Partial Public Class Rss
21 Inherits System.Web.UI.Page
23 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
25 Response.ContentType = "application/rss+xml"
26 Response.ContentEncoding = Encoding.UTF8
28 Dim rsswriter As New XmlTextWriter(Response.OutputStream, Encoding.UTF8)
30 'opening
31 WriteRssOpening(rsswriter)
33 'body
34 Dim ArticlesRssTable As DataTable = GetDateSet()
35 WriteRssBody(rsswriter, ArticlesRssTable)
37 'ending
38 WriteRssEnding(rsswriter)
40 rsswriter.Flush()
41 Response.End()
42 End Sub
44 Private Sub WriteRssOpening(ByVal rsswriter As XmlTextWriter)
45 rsswriter.WriteStartElement("rss")
46 rsswriter.WriteAttributeString("version", "2.0")
47 rsswriter.WriteStartElement("channel")
48 rsswriter.WriteElementString("title", "VBASPNETRssFeeds")
49 rsswriter.WriteElementString("link", Request.Url.Host)
50 rsswriter.WriteElementString("description", "This is a sample telling how to create rss feeds for a website.")
51 End Sub
53 Private Sub WriteRssBody(ByVal rsswriter As XmlTextWriter, ByVal data As DataTable)
54 For Each rssitem As DataRow In data.Rows
55 rsswriter.WriteStartElement("item")
56 rsswriter.WriteElementString("title", rssitem(1).ToString())
57 rsswriter.WriteElementString("author", rssitem(2).ToString())
58 rsswriter.WriteElementString("link", rssitem(3).ToString())
59 rsswriter.WriteElementString("description", rssitem(4).ToString())
60 rsswriter.WriteElementString("pubDate", rssitem(5).ToString())
61 rsswriter.WriteEndElement()
62 Next
63 End Sub
65 Private Sub WriteRssEnding(ByVal rsswriter As XmlTextWriter)
66 rsswriter.WriteEndElement()
67 rsswriter.WriteEndElement()
68 End Sub
70 Private Function GetDateSet() As DataTable
71 Dim ArticlesRssTable As New DataTable()
73 Dim strconn As String = ConfigurationManager.ConnectionStrings("ConnStr4Articles").ConnectionString
74 Dim conn As New SqlConnection(strconn)
75 Dim strsqlquery As String = "SELECT * FROM [Articles]"
77 Dim da As New SqlDataAdapter(strsqlquery, conn)
78 da.Fill(ArticlesRssTable)
80 Return ArticlesRssTable
81 End Function
83 End Class